The approaches described in this section could be pursued, but are not necessarily approaches that have been previously conceived or pursued. Therefore, unless otherwise indicated herein, the approaches described in this section are not prior art to the claims in this application and are not admitted to be prior art by inclusion in this section.
Digital computers use input/output (I/O) buses for transferring information between peripheral devices and a computer central processing unit and computer memory. I/O functions are also required in systems with multiple distributed processors and multiple distributed memories.
A variety of I/O bus architectures are used in such computer systems, including Personal Computer Interface (PCI). The System Packet Interface-4 bus is a relatively new high-bandwidth bus that is generally used in data packet processing systems for computer networks, such as high-speed routers and switches. Characteristics of the SPI4.2 bus architecture are described in an Interface Specification that is available in the document www.oiforum.com/public/impagreements.html. In this document, the term “SPI-4” is equivalent to “SPI4.2,” and includes variants and equivalents of the SPI4.2 bus architecture.
Although the SPI-4 bus provides a high-speed communication path for packet data within a computer system, the SPI-4 bus is not suitable for direct communication to external networks or devices. Interfacing a host with a SPI-4 bus to a network normally requires providing logical or physical ports or interfaces that are coupled to other devices or networks. Some port adapters are architected as service adapters that have no ports or interfaces, but provide a particular kind of packet processing service for a host, such as compression or decompression, encryption or decryption, etc.
Users and manufacturers particularly desire to have host systems that can accommodate ports and interfaces that use different technologies, such as Ethernet, Fast Ethernet, Gigabit Ethernet, optical, serial or other interfaces. In one approach, a host router or switch is hard-wired with a variety of different ports. However, a user cannot re-configure such a host if the user's port requirements change. Such users and manufacturers want to have a host system that is adaptable to changing port and interface requirements.
Hot swapping may also damage some devices connected to the SPI-4 bus such as devices using Complimentary Metal Oxide Semiconductor (CMOS) technology. CMOS devices are exposed to large currents when inputs to CMOS receivers are within the CMOS switching region. Some CMOS receivers have two field effect transistors (FETs) connected in series with a first FET connected to a positive power supply rail and a second FET connected to a negative power supply rail. When the input to the two FETS is in the switching region, both FETs can be continuously turned on at the same time creating a DC current path directly through the CMOS device. The continuous on state of the two FETs can dissipate enough power to damage the CMOS device.
CMOS devices also experience latch-up conditions when an input is driven beyond one of the CMOS power supply rails. In the latch-up condition, parasitic transistors in the CMOS structure dissipate large amounts of power that can destroy the CMOS device. Both power dissipation conditions described above can result from hot swapping on the host interface bus.
U.S. Pat. No. 5,793,987 and U.S. Pat. No. 6,163,824 of Quackenbush et al. disclose a port adapter with separate PCI local bus and local bus, and associated processing methods. A port adapter is an electronic device that provides one or more ports and that plugs into a host system to provide additional features or functions for the host. The technology of Quackenbush et al. has been used in PCI bus-based port adapters in the Cisco 7200 Series Routers and Cisco 7500 Series Routers, from Cisco Systems, Inc., San Jose, Calif. However, the technology of Quackenbush et al. is not suitable for hosts having SPI-4 bus architectures because of vast technical differences between the PCI bus and the SPI-4 bus. For example, the PCI bus cannot process data that is arriving from interfaces at high rates such as 10 gigabits per second (Gbps).
Still another drawback of existing port adapters is that they do not interoperate seamlessly with heterogeneous network environments. For example, a host with a plurality of port adapters may communicate with external networks or devices using any of a large number of network technologies. As a result, data packets that are received at the port adapters may have any of a large number of different formats. Requiring the host system to understand and process a large number of different packet formats would be complicated and lack scalability to new technologies. Further, it would be impractical to have one generic packet format used between each type of port adapter and the host system, because of differences in the type and quantity of data carried in packets of different technologies.
Thus, there is a need for a port adapter that can process a particular packet format for a particular technology, and provides data to the host in a single consistent packet format for internal processing.
Based on the foregoing, there is a clear need in the relevant technical field for a port adapter that can interface a host system having a SPI-4 bus architecture to different network technologies. More broadly, there is a need for an apparatus that can provide a hot-pluggable adaptive interface from the SPI-4 bus of a host to external peripheral equipment.